<?php
	require("frmCookie.php");
	
	$iOpcion = $_GET[iOpcion];
	
	if(isset($_REQUEST['producto']))
	{
		$idProducto = $_REQUEST['producto'];
	}
	else
	{
		//Cuando entra desde el menu, no le pasa Producto en la URL por eso predetermino el Producto 2, que son los Celulares
		$idProducto = 2;	
	}
	
	function agregaBlanks($inSTR, $inLong)
	{
		$long = $inLong - strlen($inSTR);
		for($a = 0; $a < $long; $a++)
			$inSTR = "0" . $inSTR;
			
		return $inSTR;
	}
	
	function normDate($inDate)
	{
		list($ano, $mes, $dia) =  split("-", substr($inDate, 0, 10));
		$outDate = $ano . "-" . $mes . "-" . $dia;
		/*switch($mes)
		{
			case 1:
			{
				$outDate = $ano . " Jan " . $dia;  
				break;
			}
			case 2:
			{
				$outDate = $ano . " Feb " . $dia;
				break;
			}
			case 3:
			{
				$outDate = $ano . " Mar " . $dia;
				break;
			}
			case 4:
			{
				$outDate = $ano . " Apr " . $dia;
				break;
			}
			case 5:
			{
				$outDate = $ano . " Jun " . $dia;
				break;
			}
			case 6:
			{
				$outDate = $ano . " Jun " . $dia;
				break;
			}
			case 7:
			{
				$outDate = $ano . " Jul " . $dia;
				break;
			}
			case 8:
			{
				$outDate = $ano . " Aug " . $dia;
				break;
			}
			case 9:
			{
				$outDate = $ano . " Sep " . $dia;
				break;
			}
			case 10:
			{
				$outDate = $ano . " Oct " . $dia;
				break;
			}
			case 11:
			{
				$outDate = $ano . " Nov " . $dia;
				break;
			}
			case 12:
			{
				$outDate = $ano . " Dec " . $dia;
				break;
			}
		}		*/
		
		return $outDate;
	}
?>
<html>
	<head>
    	<?php
		require("frmHeader.php");
		?>
		<script language="javascript" src="scripts/ajax.js"></script>
		<script language="javascript" src="scripts/validar.js"></script>
		<script language="javascript">
		function validaForm()
		{
			if (frm.txtFechaDesde.value == "")
			{
				alert("Por favor ingrese la Fecha Desde.");
				frm.txtFechaDesde.focus();
				return false;
			}
			
			if(isDate(frm.txtFechaDesde.value) == false)
			{
				frm.txtFechaDesde.focus();
				return false;
			}
			
			if (frm.txtFechaHasta.value == "")
			{
				alert("Por favor ingrese la Fecha Hasta.");
				frm.txtFechaHasta.focus();
				return false;
			}
			
			if(isDate(frm.txtFechaHasta.value) == false)
			{
				frm.txtFechaHasta.focus();
				return false;
			}
			
			return true;
		}
		</script>
	</head>
	<body>
    	<table cellpadding="0" cellspacing="0" align="center" class="tablaPrincipal">
        	<tr>
            	<td align="center">
                	<?php
					require("frmSession.php"); 
					
					//Redirecciona a SINPERMISOS.PHP en caso de no tener permisos
					
					if (!(in_array(36000, $_SESSION[permisos])))
					{
					?>
					  <script language="JavaScript" type="text/javascript">
					  <!--
					  window.location.href = "sinPermisos.php"
					  //-->
					  </script>
					<?php
					}
					$titulo = "Reporte Sony";
					
					?>
                </td>
            </tr>
            <tr>
            	<td align="center">
                	<?php
					require("frmTitulo.php");
					?>
                </td>
            </tr>
            <tr>
            	<td height="20">&nbsp;
                	
                </td>
            </tr>
            <tr>
            	<td align="center">
                	<table cellpadding="0" cellspacing="0" align="center" class="menuPrincipal">
                    	<tr>
                        	<td>
								<?php
                                require("frmMenu.php");
                                ?>
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
            <tr>
            	<td height="20">&nbsp;
                	
                </td>
            </tr>
            <tr>
                <td align="center">
                	<table cellpadding="0" cellspacing="0" align="center" class="tituloPantalla">
                    	<tr>
                        	<td align="center">
                            	<p class="texto" align="left"><?php echo $titulo; ?></p>
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
             <tr>
            	<td height="20">&nbsp;
                	
                </td>
            </tr>
            <tr>
                <td align="center">
                	<table cellpadding="0" cellspacing="0" align="center" class="estadoPantalla">
                    	<tr>
                        	<td align="center">
                            	<p class="texto" align="left"><?php echo $mensaje; ?></p>
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
             <tr>
            	<td height="20">&nbsp;
                	
                </td>
            </tr>
            <tr>
                <td align="center">
                	<table cellpadding="0" cellspacing="0" align="center" class="contenedorPrincipal">
                    	<tr>
                        	<td align="">
                        		<?php
                        		switch($iOpcion)
                        		{
                        			case 1:
                        			{
                				?>
                				<form name="frm" action="excelSony.php?iOpcion=2" onSubmit="return validaForm();" method="post">
                					<table>
                                    	<tr style="display:none;">
                                            <td>
                                                *Producto:
                                            </td>
                                            <td>
                                                <select name="producto">
                                                    <?php
                                                    
                                                    $mySQL = "Select * from productos order by nombre";
                                                    $productos = readSQL($mySQL);
                                                    foreach($productos as $producto)
                                                    {
                                                        if($producto['idProducto'] == $idProducto)
                                                        {
                                                            echo "<option value='".$producto['idProducto']."' selected>".$producto['nombre']."</option>";
                                                        }
                                                        else
                                                        {
                                                            echo "<option value='".$producto['idProducto']."'>".$producto['nombre']."</option>";
                                                            
                                                        }
                                                    }
                                                    
                                                    ?>
                                                </select>
                                            </td>
                                        </tr>
                						<tr>
                							<td>Fecha Desde: </td>
                							<td><input type="text" name="txtFechaDesde" size="10" maxlength="10" /></td>
                						</tr>
                						<tr>
                							<td>Fecha Hasta: </td>
                							<td><input type="text" name="txtFechaHasta" size="10" maxlength="10" /></td>
                						</tr>
                						<tr>
                							<td colspan="2" align="center"><input type="submit" name="cmdEnviar" value="Generar" /></td>
                						</tr>
                					</table>
                				</form>
                        		<?php
                        				break;
                        			}
                        			case 2:
                        			{
                        				$data = array(
										  array('Sucursal','Estado de Cobro', 'Comentario', 'Fecha', 'Orden', 'ID', 'Fecha Factura', 'Vendedor', 'Create Date', 'Hora', 'Expr1002', 'Expr1003', 'Repair Finish Date', 'Repair Finish HO', 'Product', 'ModelID', 'ESNIn', 'ESNOut', 'Rev SW', 'Fault Code', 'Action Code', 'Quantity', 'Part Number', 'Reusado', 'Symptom Code', 'Action Text', 'Usuario')
										);
		                        		
		                        		list($dia, $mes, $ano) = split("/", $_POST[txtFechaDesde]);
										$fechaDesde = $ano . "-" . $mes . "-" . $dia;
                        				
                        				list($dia, $mes, $ano) = split("/", $_POST[txtFechaHasta]);
										$fechaHasta = $ano . "-" . $mes . "-" . $dia;
		                        		
		                        		$mySQLOrden = "SELECT ec.nombre as estadocobro, s.nombre as sucursal, O.*, U.nombre AS USUNOM, U.apellido AS USUAPE FROM ordenes O LEFT JOIN usuarios U on O.idusuario = U.idusuario LEFT JOIN estadoscobro ec on O.idestadocobro = ec.idestadocobro LEFT JOIN sucursales s on O.idsucursal = s.idsucursal WHERE O.garantiaservice = 0 AND O.mantieneGarantia=1 AND O.idOrden IN(SELECT idOrden FROM reparaciones) AND O.idModelo IN(SELECT idModelo FROM modelos WHERE idProducto = $idProducto AND idMarca=5) AND O.fechaHoraFin BETWEEN '" . $fechaDesde . " 00:00:00' AND '" . $fechaHasta . " 23:59:59'";
										//echo $mySQLOrden;
										
		                        		$resultOrden = readSQL("SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;".$mySQLOrden);
										
										foreach($resultOrden as $valueOrden)
										{
											//echo $valueOrden['idOrden'] . "<br>";
											$validEquiPlaca = false;
											$sucursal = $valueOrden['sucursal'];
											$estadoCobro = $valueOrden['estadocobro'];
											$observacionEstadoCobro = $valueOrden['observacionEstadoCobro'];
											$apellido = $valueOrden['apellido'];
											$nombre = $valueOrden['nombre'];
											$nroLinea = $valueOrden['nroLinea'];
											$idOrden = $valueOrden['idOrden'];
											$imei = $valueOrden['imei'];
											$fechaActivacion = $valueOrden['fechaActivacionLinea'];
											$fechaInicio = $valueOrden['fechaHoraFin'];
											$fechaFin = $valueOrden['fechaHoraFin'];
											$idEstado = $valueOrden['idEstado'];
											$idModelo = $valueOrden['idModelo'];
											
											$tecnico = $valueOrden['USUAPE'] . " " . $valueOrden['USUNOM'];
											
											$idPrecio = $valueOrden['idPrecio'];
											
											$imeiSalida = $valueOrden['imeiSalida'];
											$motivoCambio = $valueOrden['motivoCambio'];
											
											$mySQLMarca = "SELECT * FROM ordenessony WHERE idOrden=" . $idOrden;
			                        		$resultMarca = readSQL($mySQLMarca);
											foreach($resultMarca as $valueMarca)
											{
												$inputSW = $valueMarca['inputSw'];
											}
											
											$mySQLModelo = "SELECT * FROM modelos WHERE idProducto = $idProducto AND idModelo=" . $idModelo;
											$resultModelo = readSQL($mySQLModelo);
											foreach($resultModelo as $valueModelo)
											{
												$nombreComercial = $valueModelo['nombreComercial'];
												$nombreFabricante = $valueModelo['nombreFabricante'];
											}
											
											$registro = array();
											
											array_push($registro, strtoupper($sucursal));
											array_push($registro, strtoupper($estadoCobro));
											array_push($registro, strtoupper($observacionEstadoCobro));
											array_push($registro, normDate($fechaInicio));
											array_push($registro, strtoupper($idOrden));
											array_push($registro, "");
											array_push($registro, normDate($fechaActivacion));
											array_push($registro, "");
											array_push($registro, normDate($fechaInicio));
											array_push($registro, "");
											array_push($registro, normDate($fechaFin));
											array_push($registro, "");
											array_push($registro, normDate($fechaFin));
											array_push($registro, "");
											array_push($registro, "P");
											array_push($registro, strtoupper($nombreFabricante));
											array_push($registro, strtoupper($imei));
											if($imeiSalida == "")
												array_push($registro, "");
											else
												array_push($registro, strtoupper($imeiSalida));
											array_push($registro, strtoupper($inputSW));
											
											$mySQLreparaciones = "SELECT R.*, SXM.codigo AS SINTOMA, FXM.codigo AS FALLA, AXM.codigo AS ACCION, P.codigoFabricante AS PARTE, P.idTipoParte AS TIPOPARTE FROM reparaciones R, sintomasxmarca SXM, fallasxmarca FXM, accionesxmarca AXM, partes P WHERE AXM.idProducto = $idProducto AND FXM.idProducto = $idProducto AND SXM.idProducto = $idProducto AND R.idSintoma = SXM.idSintoma AND SXM.idMarca = 5 AND R.idFalla = FXM.idFalla AND FXM.idMarca = 5 AND R.idAccion = AXM.idAccion AND AXM.idMarca = 5 AND R.idParte = P.idParte AND R.idOrden=" . $idOrden;
											
											$resultReparaciones = readSQL($mySQLreparaciones);
											$i = 0;
											foreach($resultReparaciones as $valueReparaciones)
											{
												$i = 1;
												
												$idSintoma = $valueReparaciones['SINTOMA'];
												$idFalla = $valueReparaciones['FALLA'];
												$idAccion = $valueReparaciones['ACCION'];
												$idParte = $valueReparaciones['PARTE'];
												$idTipoParte = $valueReparaciones['TIPOPARTE'];
												
												array_push($registro, strtoupper($idFalla));
												array_push($registro, strtoupper($idAccion));
												array_push($registro, "");
												array_push($registro, $idParte);
												array_push($registro, "");
												array_push($registro, $idSintoma);
												array_push($registro, "galander");
												
												break;
											}
												
											if($i == 0)
											{
												array_push($registro, "");
												array_push($registro, "");
												array_push($registro, "");
												array_push($registro, "");
												array_push($registro, "");
												array_push($registro, "");
												array_push($registro, "");
											}											
											array_push($registro, $tecnico);
											array_push($data, $registro);
										}
		                        		
		                        		// include package
										require 'Spreadsheet/Excel/Writer.php';
										
										// Fecha Hora Inicio
										$fecha = getdate();
										$dia = $fecha[mday];
										$mes = $fecha[mon];
										$ano = $fecha[year];
										$hora = $fecha[hours];
										$minutos = $fecha[minutes];
										$segundos = $fecha[deconds];
										$archivo =  $ano . "-" . $mes . "-" . $dia . "-" . $hora . "-" . $minutos . "-" . $segundos . "Sony.xls";
										
										// create empty file
										if($_SERVER['SERVER_NAME'] == "localhost")
										{
											$host = "/Users/fede/Sites/galander/informes/";
										}
										else
										{
											$host = "/var/www/html/galander/informes/";	
										}
										$excel = new Spreadsheet_Excel_Writer($host . $archivo);
										
										// add worksheet
										$sheet =& $excel->addWorksheet('Hoja 1');
										
										// create format for header row 
										// bold, red with black lower border
										/*$firstRow =& $excel->addFormat();
										$firstRow->setBold();
										$firstRow->setColor('black');
										$firstRow->setBottom(1);*/
										//$firstRow->setBottomColor('black');
										
										// create format for header column
										// blue with black right border
										/*$firstCol =& $excel->addFormat();
										$firstRow->setBold();
										$firstCol->setColor('black');*/
										//$firstCol->setRight(1);
										//$firstCol->setRightColor('black');
										
										// create format for top left corner
										/*$firstRowCol =& $excel->addFormat();
										$firstRowCol->setBottom(1);*/
										//$firstRowCol->setRight(1);
										//$firstRowCol->setBorderColor('black');
										
										// create format for numeric cells
										$num =& $excel->addFormat();
										$num->setNumFormat('#');
										
										$imeiF =& $excel->addFormat();
										$imeiF->setNumFormat('000000000000000');
										
										$prodcode =& $excel->addFormat();
										$prodcode->setNumFormat('0000000');
										
										$psn =& $excel->addFormat();
										$psn->setNumFormat('0000');
										
										$fecIng =& $excel->addFormat();
										$fecIng->setNumFormat('mm-yyyy-dd');
										
										// create format for averaged values
										$avg =& $excel->addFormat();
										$avg->setNumFormat('0.00');
										
										// add data to worksheet
										$rowCount=0;
										foreach ($data as $row) 
										{
											for($colCount = 0; $colCount < sizeof($row); $colCount++) 
											{
											    /*if ($rowCount == 0 && $colCount == 0) {
											      $format = 'firstRowCol';
											    } else if ($rowCount == 0) {
											        $format = 'firstRow';        
											    } else if ($colCount == 0) {
											        $format = 'firstCol';                
											    } else {
											        $format = 'num';                      
											    }*/
											    if($colCount == 13)
											    	$format = 'imeiF';
											    else if($colCount == 14)
											    	$format = 'imeiF';
											    else
											    	$format = 'num';
											    /*if($colCount == 4 || $colCount == 8 || $colCount == 9)
											    {
											    	$format = 'num';
											    }*/
										    	
										   		$sheet->write($rowCount, $colCount, $row[$colCount], $$format);                       
										  	}  
										  // get cell coordinates
										  $start = Spreadsheet_Excel_Writer::rowcolToCell($rowCount, 1);
										  $end = Spreadsheet_Excel_Writer::rowcolToCell($rowCount, (sizeof($row)-1));
										  // add average() formula to terminating cell of each row
										  // except the first (header) row
										  /*if ($rowCount != 0) {
										    $sheet->writeFormula($rowCount, sizeof($row), "=AVERAGE($start:$end)", $avg);     
										  } */
										  $rowCount++;
										}
										
										// save file to disk
										if ($excel->close() === true) {
											echo "<a class='linknuevo' href='informes/" . $archivo . "'>Descargar Archivo</a>";
										  //echo 'Spreadsheet successfully saved!';  
										} else {
										  echo 'ERROR: Could not save spreadsheet.';
										}
										
										/*foreach($data as $val)
										{
											foreach($val as $val1)
											{
												echo $val1 . "<br>";
											}
										}*/
                        				break;
                        			}
								}
                        		?>
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
        </table>
	</body>
</html>